2006-12-24 Matthias Clasen <mclasen@redhat.com>
+ * gtk/gtkentry.c (gtk_entry_button_press): When
+ shift-clicking, keep the larger part of the selection
+ selected. (#353709, Benjamin Otte)
+
+ * gtk/gtkbutton.c (gtk_button_get_props): Use
+ gtk_border_free when freeing borders.
+
* gtk/gtkbutton.c (gtk_button_grab_notify): Be more
careful when faking a button release. (#323146,
Travis Abbott)
if (tmp_border)
{
*default_border = *tmp_border;
- g_free (tmp_border);
+ gtk_border_free (tmp_border);
}
else
*default_border = default_default_border;
if (tmp_border)
{
*default_outside_border = *tmp_border;
- g_free (tmp_border);
+ gtk_border_free (tmp_border);
}
else
*default_outside_border = default_default_outside_border;
if (tmp_border)
{
*inner_border = *tmp_border;
- g_free (tmp_border);
+ gtk_border_free (tmp_border);
}
else
*inner_border = default_inner_border;
if (tmp_pos > sel_start && tmp_pos < sel_end)
{
- /* Truncate current selection */
- gtk_entry_set_positions (entry, tmp_pos, -1);
+ /* Truncate current selection, but keep it as big as possible */
+ if (tmp_pos - sel_start > sel_end - tmp_pos)
+ gtk_entry_set_positions (entry, sel_start, tmp_pos);
+ else
+ gtk_entry_set_positions (entry, tmp_pos, sel_end);
}
else
{
PangoLayoutLine *line;
gint index;
gint pos;
- gboolean trailing;
+ gint trailing;
const gchar *text;
gint cursor_index;